package com.ruoyi.find.mapper;

import com.ruoyi.find.domain.FurnitureType;

import java.util.List;

/**
 * 家具类型Mapper接口
 * 
 * @author ruoyi
 * @date 2025-05-24
 */
public interface FurnitureTypeMapper 
{
    /**
     * 查询家具类型
     * 
     * @param typeId 家具类型主键
     * @return 家具类型
     */
    public FurnitureType selectFurnitureTypeByTypeId(Long typeId);

    /**
     * 查询家具类型列表
     * 
     * @param furnitureType 家具类型
     * @return 家具类型集合
     */
    public List<FurnitureType> selectFurnitureTypeList(FurnitureType furnitureType);

    /**
     * 新增家具类型
     * 
     * @param furnitureType 家具类型
     * @return 结果
     */
    public int insertFurnitureType(FurnitureType furnitureType);

    /**
     * 修改家具类型
     * 
     * @param furnitureType 家具类型
     * @return 结果
     */
    public int updateFurnitureType(FurnitureType furnitureType);

    /**
     * 删除家具类型
     * 
     * @param typeId 家具类型主键
     * @return 结果
     */
    public int deleteFurnitureTypeByTypeId(Long typeId);

    /**
     * 批量删除家具类型
     * 
     * @param typeIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteFurnitureTypeByTypeIds(Long[] typeIds);

    /**
     * 查询所有启用的家具类型
     * 
     * @return 家具类型列表
     */
    public List<FurnitureType> selectAllEnabledFurnitureTypes();

    /**
     * 根据父类型ID查询子类型
     * 
     * @param parentId 父类型ID
     * @return 子类型列表
     */
    public List<FurnitureType> selectChildTypesByParentId(Long parentId);
}